#ifndef __HANDLER_DG_CHARINFO_H__
#define __HANDLER_DG_CHARINFO_H__

#pragma once


#include <PacketStruct.h>

#define Handler_DG_CHARINFO_DECL( p )			static VOID On##p( ServerSession * pServerSession, MSG_BASE * pMsg, WORD wSize )
#define Handler_DG_CHARINFO_IMPL( p )			VOID Handler_DG_CHARINFO::On##p( ServerSession * pServerSession, MSG_BASE * pMsg, WORD wSize )

class ServerSession;

class Handler_DG_CHARINFO
{
public:
	Handler_DG_CHARINFO();
	~Handler_DG_CHARINFO();

	//Handler_DG_CHARINFO_DECL( DG_ITEM_WAREHOUSEITEMALL_ACK );
	Handler_DG_CHARINFO_DECL( DG_ITEM_SERIAL_ACK );

	Handler_DG_CHARINFO_DECL( DG_CHARINFO_CHAR_ITEM_CMD );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_SKILL_CMD );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_QUICK_CMD );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_STYLE_CMD );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_QUEST_CMD );
	//Handler_DG_CHARINFO_DECL( DG_CHARINFO_WAREHOUSE_CMD );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_UDPATE_ACK );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_ALL_REQ_ACK );
	Handler_DG_CHARINFO_DECL( DG_CHARINFO_ALL_REQ_NAK );

	Handler_DG_CHARINFO_DECL( DG_WAREHOUSE_START_ACK );
	Handler_DG_CHARINFO_DECL( DG_WAREHOUSE_START_NAK );

	Handler_DG_CHARINFO_DECL( DG_WAREHOUSE_END_ACK );
	Handler_DG_CHARINFO_DECL( DG_WAREHOUSE_END_NAK );

	Handler_DG_CHARINFO_DECL( DG_EVENT_SELECT_ACK );
	Handler_DG_CHARINFO_DECL( DG_EVENT_SELECT_NAK );

	Handler_DG_CHARINFO_DECL( DG_EVENT_UPDATE_ACK );
	Handler_DG_CHARINFO_DECL( DG_EVENT_UPDATE_NAK );
};


#endif // __HANDLER_DG_CHARINFO_H__